From 73b351f7b2b6b7c91aafe2fff6e351e2841ee732 Mon Sep 17 00:00:00 2001 From: "kaf24@localhost.localdomain" Date: Fri, 26 Jan 2007 13:36:52 +0000 Subject: [PATCH] 32-on-64: Fix an one-off error in compat_addr_ok(). Signed-off-by: Jan Beulich --- xen/include/asm-x86/x86_64/uaccess.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xen/include/asm-x86/x86_64/uaccess.h b/xen/include/asm-x86/x86_64/uaccess.h index 565a33c81d..5c55b5beb9 100644 --- a/xen/include/asm-x86/x86_64/uaccess.h +++ b/xen/include/asm-x86/x86_64/uaccess.h @@ -20,7 +20,8 @@ #define __compat_addr_ok(addr) \ ((unsigned long)(addr) < HYPERVISOR_COMPAT_VIRT_START(current->domain)) -#define compat_access_ok(addr, size) __compat_addr_ok((addr) + (size)) +#define compat_access_ok(addr, size) \ + __compat_addr_ok((unsigned long)(addr) + ((size) ? (size) - 1 : 0)) #define compat_array_access_ok(addr,count,size) \ (likely((count) < (~0U / (size))) && \ -- 2.30.2